package com.joysuch.wwyt.bp.bean.investigate;

import cn.zlg.common.springmvc.validate.constraints.NotNull;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.joysuch.wwyt.app.bean.AppInvestigateRecordDto;
import com.joysuch.wwyt.bp.bean.BpBaseUserBean;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 * @Author ZhangDong
 * @Date 2020/3/26 9:27
 */
@Data
public class BpInvestigateRecordBean {

    @ApiModelProperty("主键id--修改时传值")
    private Long id;
    @ApiModelProperty("排查计划id")
    @NotNull(message = "请选择排查计划")
    private Long checkPlanId;
    @ApiModelProperty("排查计划名称--前端无需传值")
    private String checkPlanName;
    @ApiModelProperty("排查类型名称--前端无需传值")
    private String typeName;
    @ApiModelProperty("排查人员Id")
    @NotNull(message = "请选择排查人员")
    private Long checkUserId;
    @ApiModelProperty("排查人员姓名--前端无需传值")
    private String checkUserName;
    @ApiModelProperty("排查完成日期")
    @NotNull(message = "请选择排查完成日期")
    private Date checkFinishDate;
    @ApiModelProperty("责任部门")
    private Long dutyDepartId;
    @ApiModelProperty("责任部门名称--前端无需传值")
    private String dutyDepartName;
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("排查结果--前端无需传值")
    private String checkResult;
    @ApiModelProperty("检查项目集合")
    @Valid
    private List<BpInvestigateRecordItemBean> itemBeanList;
    @ApiModelProperty("app/v2 查看排查记录项目详情 --前端无需传值")
    private List<AppInvestigateRecordDto> recordDtoList;

    @ApiModelProperty("排查计划相关信息--前端无需传值")
    private BpInvestigatePlanBean planBean;

    @ApiModelProperty("异常总数--前端无需传值")
    private Integer exceptionSum;
    @ApiModelProperty("异常处理状态--前端无需传值")
    private String exceptionHandleStatus;

    @ApiModelProperty("任务id--app端传值")
    private Long taskId;

    @ApiModelProperty("计划时间--前端无需传值")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date planDate;

    @ApiModelProperty("参与人员集合")
    private List<BpBaseUserBean> participants;
}
